// 简化的中文翻译工具
import zhCN from "@/src/locales/zh-CN/common.json";

// 获取嵌套对象的值
function getNestedValue(obj: any, path: string): any {
    return path.split(".").reduce((current, key) => {
        return current && current[key] !== undefined ? current[key] : undefined;
    }, obj);
}

// 翻译函数
export function t(key: string, params?: Record<string, string | number>): string {
    const value = getNestedValue(zhCN, key);

    if (value === undefined) {
        console.warn(`Translation key not found: ${key}`);
        return key; // 返回键名作为后备
    }

    if (typeof value !== "string") {
        return String(value);
    }

    // 替换参数
    if (params) {
        return Object.entries(params).reduce((result, [param, replacement]) => {
            return result.replace(new RegExp(`{{${param}}}`, "g"), String(replacement));
        }, value);
    }

    return value;
}

// React Hook 版本
export function useTranslation() {
    return { t };
} 